home *** CD-ROM | disk | FTP | other *** search
/ Ian & Stuart's Australian Mac 1993 September / September 93.iso / Archives / Utilities / Compression / driver-level-compression.txt < prev   
Internet Message Format  |  1993-05-24  |  17KB

  1. Date: Sun, 16 May 1993 14:00:10 -0500 
  2. From: tonyh@msc.cornell.edu (Tony Huang)
  3. Subject: [*] Review of eDisk and TimesTwo 
  4.  
  5. This is a review of the only two driver-level compression programs
  6. currently available. It also addresses a number of other compression
  7. related issues. I'll update this document when new information or new
  8. product in this category (such as Stacker for Macintosh) becomes available.
  9. I welcome any comment or suggestion, and espeicially your experience with
  10. these products.
  11.  
  12. To the Moderators: please replace the file times-two.txt that I previous
  13. submitted with this one.
  14.  
  15. Tony Huang
  16. tonyh@msc.cornell.edu
  17. Review of eDisk and TimesTwo
  18. ----------------------------
  19.  
  20. A little more than six months ago, Golden Triangle introduced TimesTwo, the
  21. first driver-level compression program for the Mac. It remained the only
  22. product of its kind until now. After a two-month delay, Alysis is finally
  23. shipping eDisk (To be fair, TimesTwo was delayed for over three months
  24. after the initial announcement). Despite the distinction of being the only
  25. two driver-level compression programs currently on the market, the two
  26. programs are quite different in a number of respects. The following is a
  27. review of these two programs (Comparisons with other file-level compression
  28. programs are also made where appropriate).
  29.  
  30. I. Driver-level Compression vs. File-level Compression
  31.  
  32. File-level compression programs for the Mac have been around for a while.
  33. They compress (and decompress) data on a file-by-file basis. They basically
  34. fall into two categories. In the first category are programs like StuffIt
  35. and DiskDoubler.  With these programs, the user has to decide which file
  36. (or files) to compress and initiate the action. In the second category are
  37. programs that compress and decompress files automatically in the
  38. background. Programs such as AutoDoubler, More Disk Space, SpaceSaver
  39. belong to this second category. To operate in the background, these
  40. programs typically require the installation of a control panel in your
  41. System folder (More Disk Space patches the System file directly by
  42. installing its own resources). Because of this requirement compatibility is
  43. a problem. There is always the potential of conflict with another INIT
  44. (also known as system Extension or Startup document) or control panel with
  45. INIT code, or with the way a particular application works. These conflicts
  46. may or may not be the fault of file-level compression but the potential is
  47. there and is unavoidable at the file level. Another problem with file-level
  48. compression is the lack of total transparency while moving files from disk
  49. to disk (especially across a network).
  50.  
  51. Driver-level compression solves all these problems, theoretically. Since
  52. your hard disk (or any other rewritable SCSI drive) SCSI driver operates at
  53. the lower level than the Mac operating system, compatibility should not be
  54. an issue (except with those very few programs that also try to modify the
  55. SCSI driver or access the driver directly in an unusual way). For the same
  56. reason, driver-level compression is almost totally transparent to the user.
  57. One can move the files around from disk to disk or to another Mac on the
  58. network without any worry. A disk with data compression driver can be
  59. mounted on any Mac and its files accessed without any special program.
  60. There is a price to be paid, however, for all this simplicity and elegance.
  61. Since driver-level compressor compresses ALL data written to the disk (it
  62. cannot distinguish files, by definition), user cannot pick and choose what
  63. to compress and what not to. This problem can be solved (at least
  64. partially) if the driver-level compression program works with disk
  65. partitions.
  66.  
  67. II. SCSI drivers and partitions
  68.  
  69. Most (but not all) SCSI driver programs (also known as disk formatters)
  70. support disk partitioning. A disk can be divided into a number of
  71. partitions, each of which is then treated by the Mac as a separate volume.
  72. For reasons of efficiency, it is generally a good idea to partition a large
  73. disk into several smaller volumes. With driver-level compression, there is
  74. another reason for disk partitioning. As I mentioned earlier, with
  75. driver-level compression one does not have the choice of what not to
  76. compress.  There are many files you probably do not want compressed. If you
  77. use Virtual Memory (VM) you definitely do NOT want to compress the VM swap
  78. file (which is invisible).  Files that are already compressed by another
  79. program generally should not be compressed again. There is little to gain
  80. (in disk space -- some highly compressed files may even take more disk
  81. space if compressed again by another compressor that does not recognize
  82. compressed data) but much to lose (in access time, etc.). I also put System
  83. file and Finder in this category since many of their resources are already
  84. in compressed form, and these resources are accessed frequently. If the
  85. driver-level compression program works with disk partitions, you can
  86. install the compressor on some partitions and leave the others alone. I
  87. strongly recommend leaving the start-up partition (which contains the
  88. System folder) uncompressed if the driver-level compression program
  89. supports it. 
  90.  
  91. At the moment, only eDisk from Alysis works with disk partitions (the
  92. upcoming Stacker for Macintosh will also support disk partitions). Golden
  93. Triangle also promised that a future version of TimesTwo would support disk
  94. partitioning. TimesTwo is also unique in another respect: it replaces your
  95. existing SCSI driver with its own (which is not too surprising considering
  96. Golden Triangle also produces the disk formatter DiskMaker). Unlike
  97. TimesTwo, eDisk (as well as Stacker) modifies and attaches itself to the
  98. existing SCSI driver. I personally prefer the second approach since it
  99. gives the user the freedom to choose his or her own SCSI driver.
  100.  
  101. III. Speed and Compression Ratio
  102.  
  103. Besides the program's stability (and perhaps user friendliness), the most
  104. important factors in evaluating a compression program are its speed and
  105. compression ratio. TimesTwo uses an algorithm licensed from Stac
  106. Electronics (which will release its own driver-level compression program
  107. Stacker for Macintosh) and is reasonably fast. It performed as well as any
  108. file-level compression program. eDisk uses Alysis' own algorithm and is
  109. perhaps the fastest compression program thus far (Truly objective
  110. benchmarks are nearly impossible with the current crop of SCSI benchmarking
  111. programs, however. For example, FWB HDT BenchTest give my hard disk a
  112. higher index with eDisk than without it. Decompression is exceptionally
  113. fast. On a fast Mac (a Quadra or Centris, for example), applications on a
  114. compressed partition launch just as fast as on an uncompressed partition.
  115. Compression is also very fast (unlike its sister program More Disk Space),
  116. especially when the "Delayed Write" cache is enabled (more on this later).
  117.  
  118. The amount of disk space you can save with either of these two programs, as
  119. with any other data compression program, depends the type of files you put
  120. on the disk.  It is not easy to find out exactly how much a particular file
  121. (or a set of files) was compressed by due to the nature of driver-level
  122. compression. On a partition full of applications with very few documents
  123. (applications are generally not as compressible as most types of
  124. documents), eDisk did a very good job and resulted in a roughly 2:1
  125. compression ratio. TimesTwo and eDisk handle differently the amount of
  126. available disk space. Because of compression ratios vary for different
  127. types of files, TimesTwo uses an invisible file to "adjust" the amount of
  128. the space taken up by the files. For example, if a 1 MB file is compressed
  129. down to 0.6 MB the invisible file would grow by 0.1 MB (since the 1 MB file
  130. is "supposed" to occupy only 0.5 MB on a x2 disk).
  131.  
  132. Instead of using an invisible file, eDisk calculates the amount of space
  133. dynamically so that the total "size" (amount in disk + amount available) of
  134. the disk (or partition) would fluctuate.  This approach is obviously more
  135. elegant and more accurate. However, there is a bug in the current version.
  136. At one point during testing the reported total "size" of the eDisk
  137. (actually a partition) was less than the physical size of the partition!
  138. The problem turned out to be not serious and went away after I copied a
  139. small file onto the partition forcing eDisk to recalculate.
  140.  
  141. Although both TimesTwo and eDisk achieve good compression ratio, eDisk
  142. enjoys a slight advantage here also, partly due to its unique background
  143. optimizing feature. Because files are stored differently, regular disk
  144. optimizers will not achieve the desired result on a compressed disk (even
  145. though they can be used). eDisk has its own built-in optimizing feature.
  146. During idle time eDisk optimizes the disk, and whenever possible, squeezes
  147. more space out of the disk. This feature can be turned off if you are the
  148. type that worries about excessive disk access (you should at least turn it
  149. on once in a while or use the repair function to run the optimizer in the
  150. foreground). 
  151.  
  152. IV. Installation and Setup
  153.  
  154. Installation of either TimesTwo or eDisk is not difficult but time
  155. consuming. TimesTwo offers non-destructive installation but it only works
  156. under limited circumstances. For non-destructive installation to work, the
  157. disk must not have been partitioned since TimesTwo does not currently
  158. support disk partitioning. I have found with some SCSI drivers TimesTwo
  159. installer has trouble recognizing a non-partitioned disk as
  160. non-partitioned. As a result, the installer would insist on erasing all
  161. data on the disk (You are warned and allowed to back out the installation
  162. process, however). Non-destructive installation also does not work if the
  163. disk does not have sufficient space for the installer to work with. In any
  164. event, you are encouraged to backup your data before installation.
  165.  
  166. eDisk installation is not non-destructive so you have to do a backup. On
  167. the positive side, only the partition you intend to install eDisk on is
  168. affected and the installation process is somewhat faster than TimesTwo's
  169. probably due to the fact that the installer does not have to move files
  170. around. Before the installer modifies your disk you have to choose an
  171. expansion factor  (either 2, 3, or 4) for the disk. The expansion factor
  172. has no effect on how tightly data are compressed and is used only in
  173. available space calculation (see last section). To me, it is just an
  174. advertising gimmick. Once eDisk is installed you should change some of the
  175. eDisk settings (using the default settings is not recommended). First, you
  176. should disable the "Smart" eDisk feature (It does not work very well). Then
  177. set the compression speed to either fast (if your Mac is reasonably fast)
  178. or faster (if you have a slow Mac such as an SE or Classic). The most
  179. interesting feature is the "Delayed Write" cache. I recommend turning it on
  180. (I set aside 1 MB for the cache but you set it to any value between 64K to
  181. 10MB depending on how much RAM you have). It improves compression speed
  182. significantly. On the down side, if the system crashes you risk losing data
  183. still in the cache.
  184. The cache is flushed during idle time or when full.
  185.  
  186. V. Driver-lever Compression and Removable Drives
  187.  
  188. Because of the existence of numerous SCSI drivers and the lack of standard,
  189. auto-mounting of removable cartridges (or discs) is a challenge for a
  190. driver-level compression program. With removable media there is always the
  191. possibility of some cartridges (Here I use the term "cartridge" to mean any
  192. removable medium including MO disc) formatted with incompatible drivers. If
  193. you routinely use cartridges formatted with different drivers, the standard
  194. solution is to use SCSIProbe to manually mount the cartridge (driver
  195. loading) and close the driver on ejection (driver purging). SyQuest has
  196. been promoting this solution. However, very few SCSI drivers support this
  197. scheme at this time. As a result, auto-mounting INITs that are supplied
  198. with many SCSI formatters do not work with SCSIProbe. More specifically,
  199. these auto-mounting INITs will not reload the SCSI driver from a new
  200. cartridge if the old SCSI driver was purged, or they will use the old
  201. driver on the new cartridge if it was not (which will likely lead to a
  202. crash, at some point if not immediately, or the dreaded message saying
  203. "This is not a Macintosh disk. Do you want to initialize it").
  204.  
  205. The problem is further complicated by driver-level compression. You may
  206. want to install drive-level compression program on some cartridges but not
  207. on others. Unfortunately, neither TimesTwo nor eDisk handles the problem
  208. very well. With TimesTwo, users of removable cartridge drive would have to
  209. give up on auto-mounting of cartridges and use SCSIProbe or similar utility
  210. to mount cartridges manually. The situation is not much better with eDisk.
  211. Alysis advises against using auto-mounting INIT. Instead, a "special"
  212. version of SCSIProbe is included with eDisk (As it turns out, there is
  213. nothing special about this "special" version. It is just the latest version
  214. 3.5 of SCSIProbe altered to display the Alysis logo). However, this
  215. combination does not work very well (at least for me). Worse yet, there is
  216. apparently a bug in eDisk. If you boot your Mac without any expanded
  217. cartridge in the removable drive and later want to mount an "expanded"
  218. cartridge (i.e., one with eDisk installed) with SCSIProbe, you will get an
  219. error message saying there is insufficient memory to load the driver (I am
  220. not sure at this point if this bug affects all SCSI drivers or just some of
  221. them). There is no problem mounting cartridges this way if you had any
  222. expanded cartridge in the drive when the Mac starts up. After some
  223. experimentation, I found there is an alternative provided that you
  224. formatted all your cartridges with the same SCSI formatter (and you do not
  225. routinely use cartridges formatted by other people). With this method you
  226. can continue to use your favorite auto-mounting INIT (most likely the one
  227. bundled with the SCSI formatter). Just power on (or restart) your Mac with
  228. an expanded cartridge in the drive (you have to do this regardless which
  229. method you use if you want to use an expanded cartridge during the
  230. session). Once the eDisk driver is loaded you can swap cartridges (whether
  231. expanded or not) without any problem (assuming all cartridge are prepared
  232. with the same SCSI formatter, of course) and the cartridges will
  233. auto-mount.
  234.  
  235. VI. Compatibility Issues
  236.  
  237. As I mentioned earlier, incompatibility is not a big issue with
  238. well-written driver-level compression programs. The only class of programs
  239. that are potentially incompatible are other driver-level programs. Many
  240. disk security programs (such as DiskLock) belong to this category. The
  241. password feature of many SCSI drivers may not work, either.  You should
  242. still be able to use the password feature on an unexpanded disk or
  243. partition, however.
  244.  
  245. Alysis also warned using Public Utilities or AutoDoubler (both from Fifth
  246. Generation Systems) with eDisk. Alysis has also admitted that they have not
  247. thoroughly tested these two programs. I did not test them either because I
  248. do not have Public Utilities and there is no reason to use AutoDoubler with
  249. eDisk. Nonetheless, I suspect this is just a continuing feud (which started
  250. with AutoDoubler and More Disk Space) between the two companies.
  251.  
  252. VII. Summary
  253.  
  254. Driver-level compression programs are maturing and they compete favorably
  255. with any file-level compression program. The following comparison chart
  256. should help you decide which program is best for you. (The rating is on a
  257. scale of 1 through 5: 1 = poor, 5 = excellent).
  258.  
  259. +---------------+---------------+--------------+--------+-------------+
  260. |               | Compatibility | Ease of use/ | Speed* | Compression |
  261. |               |               | Transparency |        |    ratio    |
  262. +---------------+---------------+--------------+--------+-------------+
  263. |AutoDoubler    |       3       |      3/2     |   3    |      4      |
  264. +---------------+---------------+--------------+--------+-------------+
  265. |eDisk          |       4       |      4/5     |   5    |      4      |
  266. +---------------+---------------+--------------+--------+-------------+
  267. |More Disk Space|       2       |      2/2     |   4**  |      3      |
  268. +---------------+---------------+--------------+--------+-------------+
  269. |SpaceSaver     |       4       |      4/2     |   2    |      4      |
  270. +---------------+---------------+--------------+--------+-------------+
  271. |TimesTwo       |       4       |      4/4     |   3    |      3      |
  272. +---------------+---------------+--------------+--------+-------------+
  273.  
  274. * The numbers are weighted heavily in favor of decompression speed, since
  275. compression is usually performed in idle time and does not affect overall
  276. performance very much. This applies to all file-level compressors and eDisk
  277. with "Delayed Write" cache turned on. Only TimesTwo's overall performance
  278. is significantly affected by compression speed.
  279.  
  280. ** More Disk Space has the slowest compression speed.
  281.  
  282.  
  283. -----------------------------------------------------------------------
  284. Some Final Thoughts
  285.  
  286. This document will be updated when new information or new product in this
  287. category (such as Stacker for Macintosh) becomes available. I welcome any
  288. comment or suggestion, and espeicially your experience with these products.
  289.  
  290. Tony Huang                                       Revision: 1.0
  291. tonyh@msc.cornell.edu                            Date: 5/14/93
  292.  
  293.  
  294.  
  295.  
  296.